Voice over internet protocol favoring aggregating technology in a WLAN

ABSTRACT

A system for aggregating packet in a Medium Access control layer of a router to improve effective bandwidth of transmission over a network. The system begins by receiving Medium Access Control Service Data Unit packets in a Medium Access Control unit of a router wherein each of the Medium Access Control Service Data Unit packets are addressed to different receivers. The Medium Access Control Service Data Unit packets are then aggregated into one Medium Access Control Protocol Data Unit packet. The Medium Access Control Protocol Data Unit packet is then transmitted to said Physical layer of said router for transmission.

FIELD OF THE INVENTION

This invention relates to the transmission of packets from an Access Point (AP). More particularly, this invention relates to aggregating packets in the Medium Access Control (MAC) layer of an AP. Still more particularly, this invention relates to a method of aggregating packets addressed to different destinations to increase the effective bandwidth of transmissions in a Basic Service Set (BSS) to improve Voice Internet Protocol (VoIP) transmission efficiency over a radio interface.

PRIOR ART

It is a problem in the art of BSS to increase the effective bandwidth of communications transmitted over the radio interface. Effective bandwidth is the actual amount of total bandwidth used for application data transferred over the radio interface per a unit of time. Effective bandwidth is a particular problem in providing Voice over Internet Protocol (VoIP) telephone communications over a BSS in a Wireless Local Area Network (WLAN).

Voice communications require a constant bit rate. In order to provide the constant bit rate, many small packets are constantly transmitted in order to provide the number of bits needed to provide quality voice communications. This significantly reduces the effective bandwidth of the network as each packet transmitted includes overhead bits used to identify the packet.

For example, a G.729 speech frame has a 20-byte (160 bit) payload requires the following number of bits to transmit the 160 bits, 144 bits of preamble, 48 bits of a PHYsical (PHY) layer header, 34*8 bits of Medium Access Control (MAC) header and Frame Check Sequence (FCS) header, 40*8 bits of IP/UDP/RTP header, and 20*8 bits of G.729 payload. Thus, the total number of bits transmitted is 944. Thus, bandwidth efficiency for voice packet=480 bits/944 bits transmitted or about 51% of the transmitted bits are used for voice communications.

One manner of improving the bandwidth efficiency of transmission is to aggregate packets in the MAC to reduce overhead spent on the MAC and PHY headers added by each frame. For example, 802.11n provides for aggregation of multiple MAC Protocol Data Units (MPDUs) and MAC Service Data Units (MSDUs). Studies have shown that this aggregation can provide about a 100% increase in the number of VoIP call that may be handled.

One problem with the 802.11n aggregation algorithms is that aggregation of the MSDUs can only aggregate MSDUs to the same address and aggregation of MPDUs may only aggregate MPDUs transmitted to different addresses. The latter is a general aggregation scheme which does not fit the needs of a VoIP application where every frame is small but the amount of frames is great in total. Thus, those skilled in the art are constantly striving for methods to further aggregates frames in the MAC layer to reduce the overhead of transmissions to increase the effective bandwidth of transmissions. This is especially important in networks that provide VoIP.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects and advantages of this invention are described in the following Detailed Description and the following drawings:

FIG. 1 illustrating an Access Point (AP) in accordance with this invention;

FIG. 2 illustrating a flow diagram of a method for aggregating packets in a MAC of the AP in accordance with this invention;

FIG. 3 illustrating a method for inserting the aggregated packets in a frame in a MAC of the AP in accordance with this invention; and

FIG. 4 illustrating a block diagram of a field in a frame of multiple packets in accordance with a preferred exemplary embodiment of this invention.

DETAILED DESCRIPTION

This invention relates to an AP that aggregates packets in a MAC layer to increase effective bandwidth. This invention is described below in a manner that allows one skilled in the art to design and use a system in accordance with this invention. When possible, like reference numerals have been used in the accompanying figures to describe the same or like elements of this invention.

FIG. 1 illustrates hardware components in a AP 100 in accordance with this invention. One skilled in the art will recognize that FIG. 1 illustrates the components in AP 100 needed and the relationships between the components. Other components are omitted for brevity and the exact configuration is left to those skilled in the art.

AP 100 includes a Central Processing Unit (CPU) 105. CPU 105 is a processor, microprocessor, or combination of processors and/or microprocessor that execute instructions stored in a memory to perform applications required to perform the services of an AP. CPU 100 is connected to Read Only Memory (ROM) 110 and Random Access Memory (RAM) 115 via memory bus 107. ROM 110 is any type of nonvolatile memory that stores configuration information and/or application instructions for AP 100. RAM 115 is a volatile memory that stores data and instructions for applications performed by AP 100. CPU 105 connects to an IP network through interface 120 via path 121.

Network interface 120 allows router 100 to receive data from and transmit data to the IP network via path 127. A Medium Access Control (MAC) layer 122 of interface 120 is a data link layer for communications that arranges the data in a known configuration for transmission across the network. MAC layer 122 passes the data to PHYsical (PHY) layer 125. PHY layer 125 is the circuitry that is configured to provide the data to transmit over the network to the physical components connecting AP 100 to the network.

CPU connects to transceiver 105 via bus 108. Transceiver 105 connects to an antenna to transmit data to and receive data from mobile processing devices in a given sector. Transceiver 105 includes a (MAC) layer 131 that is a data link layer for communications that arranges the data in a known configuration for transmission across the radio interface. MAC layer 131 passes the data to PHY layer 132. PHY layer 132 is the circuitry that is configured to provide the data to transmit over the radio interface to mobile processing device in BSS.

In accordance with this invention, an AP aggregates individual packets to increase the effective bandwidth of transmissions over the radio interface. In a preferred embodiment, MSDUs defined in the various IEEE 802.11 standards or drafts are aggregated to increase effective bandwidth to increase the number of VoIP calls that may be handled by the AP system. The aggregation is performed in the MAC layer of the AP to increase the efficiency of transmissions by reducing the overhead of bits added by the 802.11 MAC and PHY layers of the AP system. Thus, the following exemplary embodiment is shown in terms of frames defined in the 802.11 drafts or standards.

FIG. 2 illustrates a process performed in a 802.11 MAC layer of a AP system 100 to aggregate MAC Service Data Unit (MSDU) packets into MAC Protocol Data Unit (MPDU) frames that are passed to the PHY for transmission in PHY Protocol Data Unit (PPDU) frames over the air.

Process 200 begins in step 205 with the AP receiving multiple MSDU packets to transmit from its upstream connected network device in a specified time frame. Typically, there are certain timing demands for pushing these MSDUs towards transmission over the air. Thus, the MSDUs aggregated may depend on a time frame in which the MSDUs are received. In step 210, a MPDU is for transmitting the received MSDUs is generated. In a preferred exemplary embodiment, a Quality of Service (QoS) MPDU is generated as discussed below.

In step 215, the received MSDUs are aggregated and inserted into the generated MPDU. The completed MPDU is then transmitted from the MAC to the PHY in step 220 for transmission over the radio interface.

FIG. 3 illustrates a process 300 for performing steps 210 and 215 in accordance with a preferred exemplary embodiment in accordance with this invention. Process 300 begins by generating a QoS MPDU in step 305. In step 310, an indication that the generated QoS MPDU includes multiple MSDUs is inserted into the QoS MPDU. In a preferred exemplary embodiment, the seventh bit in a QoS field is set to indicate that the MPDU includes multiple MSDUs.

In step 315, the received MSDUs addressed to a particular receiver are grouped together. The receivers for each group of MSDUs is then determined in step 320. The timing of the grouped MSDUs in a frame is determined in step 325. A parameter set is then generated in step 330. The parameter set includes a number of a receiver field indicating the number of receivers that have grouped MSDUs in the MPDU. In the preferred exemplary embodiment, the number of receivers field is one byte in length. The parameter set also includes a receiver information field for each receiver that has one or more MSDUs in the QoS MPDU. The receiver information field includes the address of the receiver, timing information for the MSDUs of the receiver in MPDU, transmission timing of responses including acknowledgements, and an acknowledgement policy field. In a preferred embodiment, each receiver information field is 8 bytes in length. Furthermore, in the preferred embodiment, the acknowledgment policy field in each receiver field is 2 bits and may indicate no acknowledgement, immediate acknowledgement, delayed acknowledgement and reserved. In the preferred exemplary embodiment, the receiver parameter set is inserted into the QoS MPDU after the QoS field.

In some embodiments, the grouped MSDUs are then inserted into QoS MPDU in step 345. However, in the preferred exemplary embodiment, process 300 continues by generating sub-frames for each group of MSDUs in step 340. Each sub-frame includes a sub-frame header which includes a source address, a destination address and a length of sub-frame field. One MSDU field then encloses the MSDUs in the sub-frame. Padding is then added to the sub frame. This eliminates the need for a header for each MSDU which in turn reduces the overhead in the MSDUs.

In step 345, the sub-frames are then inserted into the QoS MPDU in accordance with the timing determined in step 320. Process 300 then ends.

FIG. 4, illustrates a block diagram of the fields of a QoS MPDU frame in accordance with a preferred exemplary embodiment of this invention. QoS MPDU includes a QoS field 405 in accordance with a standard QoS MPDU frame as defined in 802.11 standards or draft (i.e. 11e, 11TGn). A receiver parameter set field 410 is then inserted between the QoS field and the payload. A receiver information field 415 for each receiver is included in the receiver parameter set field 410. Each receiver parameter set field includes a receiver address field 416, a timing field 417, and an acknowledgement policy field 418. After the receiver parameter set field 410, a sub-frame 420 is included for each group of MSDUs being transmitted to a particular receiver. The sub-frame 420 includes a sub-frame header 425. The sub-frame header includes a source address 426, a destination address 427, a length field 428 which indicates the length of the sub-frame, and MSDU field 429 including the data for the MSDUs in the group. When the last sub-frame 420 ends the MPDU may include padding bits needed.

The above describes exemplary embodiments of a system for aggregating packets in accordance with this invention. It is envisioned that those skilled in the arts can and will design alternative systems that aggregate packets that infringe on this invention as set forth in the following claims either literally or through the Doctrine of Equivalents. 

1. A method for transmitting packets from an access point comprising: receiving a plurality of Medium Access Control Service Data Unit packets in a Medium Access Control unit of an access point wherein each of said plurality of Medium Access Control Service Data Unit packets are addressed to different client destinations in a Basic Service Set; aggregating said plurality of Medium Access Control Service Data Unit packets into a Medium Access Control Protocol Data Unit packet; and transmitting said Medium Access Control Protocol Data Unit packet to said Physical layer of said access point for transmission.
 2. The method of claim 1 wherein said Medium Access Control unit is an 802.11 Medium Access control unit.
 3. The method of claim 1 wherein said Physical layer is an 802.11 Physical layer.
 4. The method of claim 1 wherein said Medium Access Control Data Unit Packet is a Quality of Service Medium Access Control Data Unit packet.
 5. The method of claim 4 further comprising: setting a bit in a Quality of Service field of said Quality of Service Medium Access Control Protocol Data Unit to indicate said Quality of Service Medium Access Control Protocol Data Unit includes said plurality of Medium Access Control Service Data Unit packets.
 6. The method of claim 5 further comprising: inserting a receiver parameter set between said Quality of Service field and a frame body of said Quality of Service Medium Access Control Protocol Data Unit packet.
 7. The method of claim 6 wherein said receiver parameter includes a number of a receiver field wherein said number of receiver field indicates a number of destinations said plurality of Medium Access Control Service Data Unit packets in said Quality of Service Medium Access Control Data Unit packet.
 8. The method of claim 6 wherein said receiver parameter includes a receiver information field for each destination of said plurality of Medium Access Control Service Data Unit packets in said Quality of Service Medium Access Control Data Unit packet.
 9. The method of claim 8 wherein said receiver information field advises a receiver of timing for said Medium Access Control Service Data Unit packets in said plurality of Medium Access Control Service Data Unit packets in said Quality of Service Medium Access Control Data Unit packet transmitted to said receiver.
 10. The method of claim 8 wherein said receiver information field advises a receiver of timing for response to said Medium Access Control Service Data Unit packets in said plurality of Medium Access Control Service Data Unit packets in said Quality of Service Medium Access Control Data Unit packet transmitted to said receiver.
 11. The method of claim 8 wherein said receiver information field includes an acknowledgement policy field to indicate whether acknowledgements are required.
 12. The method of claim 8 further comprising: grouping all said Medium Access Control Service Data Unit packets in said plurality of Medium Access Control Service Data Unit packets for a receiver together.
 13. The method of claim 12 further comprising: inserting a sub-frame header for each group of said plurality of Medium Access Control Service Data Unit packets.
 14. The method of claim 13 wherein said sub-frame header includes a destination address, a source address and a length of frame.
 15. The method of claim 1 further comprising: ensuring transmission of a Physical layer Protocol Data Unit including said Medium Access Control Protocol Data Unit packet and responses from all required receivers of said plurality of Medium Access Control Service Data Unit packets fit entirely in a current Transmission Opportunity time slot.
 16. An apparatus for transmitting packets from an access point comprising: means for receiving a plurality of Medium Access Control Service Data Unit packets in a Medium Access Control unit of an access point wherein each of said plurality of Medium Access Control Service Data Unit packets are addressed to different client destinations in a Basic Service Set; means for aggregating said plurality of Medium Access Control Service Data Unit packets into a Medium Access Control Protocol Data Unit packet; and means for transmitting said Medium Access Control Protocol Data Unit packet to said Physical layer of said access point for transmission.
 17. A computer readable medium carrying one or more instructions for transmitting packets from an access point, the one or more instructions including instructions which are executed by one or more processors in said access point, cause the one or more processors to perform the method comprising: receiving a plurality of Medium Access Control Service Data Unit packets in a Medium Access Control unit of a access point wherein each of said plurality of Medium Access Control Service Data Unit packets are addressed to different client destinations in a basic service set; aggregating said plurality of Medium Access Control Service Data Unit packets into a Medium Access Control Protocol Data Unit packet; and transmitting said Medium Access Control Protocol Data Unit packet to said Physical layer of said access point for transmission.
 18. A system for transmitting packets from an access point comprising: circuitry configured to receive a plurality of Medium Access Control Service Data Unit packets in a Medium Access Control unit of an access point wherein each of said plurality of Medium Access Control Service Data Unit packets are addressed to different client destinations in a Basic Service Set; circuitry configured to aggregate said plurality of Medium Access Control Service Data Unit packets into a Medium Access Control Protocol Data Unit packet; and circuitry configured to transmit said Medium Access Control Protocol Data Unit packet to said Physical layer of said access point for transmission.
 19. The system of claim 18 wherein said Medium Access Control unit is an 802.11 Medium Access control unit.
 20. The system of claim 18 wherein said Physical layer is an 802.11 Physical layer.
 21. The system of claim 18 wherein said Medium Access Control Data Unit Packet is a Quality of Service Medium Access Control Data Unit packet.
 22. The system of claim 21 further comprising: circuitry configured to set a bit in a Quality of Service field of said Quality of Service Medium Access Control Protocol Data Unit to indicate said Quality of Service Medium Access Control Protocol Data Unit includes said plurality of Medium Access Control Service Data Unit packets.
 23. The system of claim 22 further comprising: circuitry configured to insert a receiver parameter set between said Quality of Service field and a frame body of said Quality of Service Medium Access Control Protocol Data Unit packet.
 24. The system of claim 23 wherein said receiver parameter includes a number of a receiver field wherein said number of receiver field indicates a number of destinations said plurality of Medium Access Control Service Data Unit packets in said Quality of Service Medium Access Control Data Unit packet.
 25. The method of claim 23 wherein said receiver parameter includes a receiver information field for each destination of said plurality of Medium Access Control Service Data Unit packets in said Quality of Service Medium Access Control Data Unit packet.
 26. The system of claim 25 wherein said receiver information field advises a receiver of timing for said Medium Access Control Service Data Unit packets in said plurality of Medium Access Control Service Data Unit packets in said Quality of Service Medium Access Control Data Unit packet transmitted to said receiver.
 27. The system of claim 25 wherein said receiver information field advises a receiver of timing for response to said Medium Access Control Service Data Unit packets in said plurality of Medium Access Control Service Data Unit packets in said Quality of Service Medium Access Control Data Unit packet transmitted to said receiver.
 28. The system of claim 25 wherein said receiver information field includes an acknowledgement policy field to indicate whether acknowledgements are required.
 29. The system of claim 27 further comprising: circuitry configured to group all said Medium Access Control Service Data Unit packets in said plurality of Medium Access Control Service Data Unit packets for a receiver together.
 30. The system of claim 29 further comprising: circuitry configured to insert a sub-frame header for each group of said plurality of Medium Access Control Service Data Unit packets.
 31. The system of claim 30 wherein said sub-frame header includes a destination address, a source address and a length of frame.
 32. The system of claim 18 further comprising: ensuring transmission of a Physical layer Protocol Data Unit including said Medium Access Control Protocol Data Unit packet and responses from all required receivers of said plurality of Medium Access Control Service Data Unit packets fit entirely in a current Transmission Opportunity time slot. 